What is the difference between JavaFX and Java Swing in GUI development